package com.sgs.carbon.web.modules.common.convert.permission;

import com.sgs.carbon.web.modules.common.controller.permission.vo.menu.SysMenuCreateReqVO;
import com.sgs.carbon.web.modules.common.controller.permission.vo.menu.SysMenuRespVO;
import com.sgs.carbon.web.modules.common.controller.permission.vo.menu.SysMenuSimpleRespVO;
import com.sgs.carbon.web.modules.common.controller.permission.vo.menu.SysMenuUpdateReqVO;
import com.sgs.carbon.web.modules.common.dal.dataobject.permission.SysMenuDO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;

import java.util.List;

/**
 * @see <a href="https://github.com/mapstruct/mapstruct"><b>mapstruct</b></a>
 *
 * @author Dave Liu
 * @date 2021-10-06
 */
@Mapper
public interface SysMenuConvert {

    SysMenuConvert INSTANCE = Mappers.getMapper(SysMenuConvert.class);

    List<SysMenuRespVO> convertList(List<SysMenuDO> list);

    SysMenuDO convert(SysMenuCreateReqVO bean);

    SysMenuDO convert(SysMenuUpdateReqVO bean);

    SysMenuRespVO convert(SysMenuDO bean);

    List<SysMenuSimpleRespVO> convertList02(List<SysMenuDO> list);

}
